Field of Invention
Aspects of the present invention relate to communication between communication devices using a wireless communication protocol. Specifically, aspects of the present invention relate to wireless communication between communication devices of an analyte monitoring system using a wireless communication protocol that restricts packet size, such as the Bluetooth Low Energy (BLE) protocol.
Discussion of the Background
The Bluetooth Low Energy (BLE) protocol enables wireless communication between communication devices (e.g., between a transceiver and a mobile handheld device). BLE is a low energy protocol designed to work with low power applications. BLE permits minimization of radio uptime in exchange for a reduction in data rate. The BLE protocol is significantly different than the standard Bluetooth protocol. Newer communication devices are typically designed to support both the standard Bluetooth protocol as well as the Bluetooth Low Energy protocol. To keep costs down, the same hardware in the communication device typically handles these two protocols.
To keep power consumption low and cost down, the BLE protocol introduces some limitations that do not exist in the standard Bluetooth protocol. For example, in BLE, communication packet sizes are limited to a maximum of 25 octets, and communication speed is limited to 0.3 Mbps. Particular communication devices may impose one or more additional limitations. For example, a particular communication device may limit the communication packet size to a maximum size less than 25 octets. For another example, the operating system (e.g., the iOS mobile operating system) of a mobile handheld device may introduce additional considerations specific to the framework (e.g., an iOS framework such as Core Bluetooth) through which applications access BLE hardware.
Additional considerations specific to the iOS frame may include one or more of the following. First, an iOS device may have access to the BLE hardware only through the Core Bluetooth framework. The iOS device may use a single antenna for both WiFi and Bluetooth (including BLE). In order to limit the opportunity for application writers to seriously affect WiFi performance, Core Bluetooth may limit the minimum connection interval (CI) to a minimum of 18.75 ms. For similar reasons, Core Bluetooth may limit the maximum number of packet pairs per connection interval to 6.
Second, establishing a secure (bonded) connection on the iOS device may be called “Pairing” However, for security reasons, the iOS application may not initiate pairing directly. Instead, to establish a secure BLE connection with the mobile handheld device, the other communication device (a transceiver in an analyte monitoring system) should initiate pairing. If the other communication device is not in the correct state, and the iOS application of the mobile handheld device tries to pair, the communication device with which pairing is attempted may respond with an authentication error. The authentication error may not trigger the iOS device to display a “Pairing” popup dialog, and the user may be prevented from pairing. From the iOS application point of view, this process is transparent.
When operating in background mode, a BLE device may conserve the channels allocated to BLE and, upon observing no communication/data flow over certain period of time, drop the connection. Accordingly, it may be difficult to maintain a connection in case where information is only provided on need basis and not streamed. This is a characteristic for BLE but is not a constraint on the standard Bluetooth. When operating in background mode, an iOS application does not receive discovery notifications for peripherals that have been previously seen. This means that while operating in the background, it is not possible to see the contents of advertising packets as they change, so it is not possible to operate in a mostly-unconnected mode, only connecting when there is data to retrieve.
The iOS application can watch for and re-connect with a known peripheral. If the iOS application subsequently enters the background, it will still receive the usual callbacks if Core Bluetooth sees matching advertisement packets. When operating in the background, the iOS application can freely exchange information with peripherals to which they are connected. The iOS application has approximately 12 seconds to process any incoming packet on the open connection.
There is presently a need in the art for improved wireless communication between communication devices using a wireless communication protocol, such as the BLE protocol, that restricts packet size.